package stream;

import cart.CartService;
import cart.Sku;
import cart.SkuCategoryEnum;
import com.alibaba.fastjson.JSON;
import org.junit.Before;
import org.junit.Test;

import java.util.List;

public class StreamOperacor {
    List<Sku> list;

    @Before
    public void init(){
        list = CartService.getCartSkuList();
    }
    /**
     * 流操作
     */

    @Test
    public void testFilter(){
        list.stream()
                .filter(sku -> sku.getSkuCategory().equals(SkuCategoryEnum.ELECTRONICS))
                .forEach(sku -> System.out.println(JSON.toJSONString(sku,true)));
    }

    @Test
    public void testMap(){
        list.stream()
                .map(sku -> sku.getSkuName())
                .forEach(sku -> System.out.println(JSON.toJSONString(sku,true)));
    }

//    public void testFlatMap() {
//        list.stream()
//                .flatMap(sku -> )
//                .forEach(sku -> System.out.println(JSON.toJSONString(sku,true)));
//    }

}
